﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace InnvoiceActual.Logica.GestorObject
{
    public class ItemRemito
    {
        #region Property

        private int _codigoEmpresa;
        public int CodigoEmpresa
        {
            get
            {
                return _codigoEmpresa;
            }
            set
            {
                _codigoEmpresa = value;
            }
        }

        private int _nroComprobante1;
        public int NroComprobante1
        {
            get
            {
                return _nroComprobante1; 
            }
            set
            {
                _nroComprobante1 = value;
            }
        }

        private int _nroComprobante2;
        public int NroComprobante2
        {
            get
            {
                return _nroComprobante2;
            }
            set
            {
                _nroComprobante2 = value;
            }
        }

        private byte _codigoTipo;
        public byte CodigoTipo
        {
            get
            {
                return _codigoTipo;
            }
            set
            {
                _codigoTipo = value;
            }
        }

        private int _posicion;
        public int Posicion
        {
            get
            {
                return _posicion;
            }
            set
            {
                _posicion = value;
            }
        }

        private int _codigoCategoriaArticulo;
        public int CodigoCategoriaArticulo
        {
            get
            {
                return _codigoCategoriaArticulo;
            }
            set
            {
                _codigoCategoriaArticulo = value;
            }
        }

        private int _codigoArticulo;
        public int CodigoArticulo
        {
            get
            {
                return _codigoArticulo;
            }
            set
            {
                _codigoArticulo = value;
            }
        }

        private int _codigoSubArticulo;
        public int CodigoSubArticulo
        {
            get
            {
                return _codigoSubArticulo;
            }
            set
            {
                _codigoSubArticulo = value;
            }
        }

        private string _codigoUniArticulo;
        public string CodigoUniArticulo
        {
            get
            {
                return _codigoUniArticulo;
            }
            set
            {
                if (_codigoUniArticulo == value)
                    return;
                _codigoUniArticulo = value;
            }
        }

        private double _cantidad;
        public double Cantidad
        {
            get
            {
                return _cantidad;
            }
            set
            {
                _cantidad = value;
            }
        }

        private decimal _precioUnitario;
        public decimal PrecioUnitario
        {
            get
            {
                return _precioUnitario;
            }
            set
            {
                _precioUnitario = value;
            }
        }

        private double _iva;
        public double Iva
        {
            get
            {
                return _iva;
            }
            set
            {
                _iva = value;
            }
        }

        private string _descripcion;
        public string Descripcion
        {
            get
            {
                return _descripcion;
            }
            set
            {
                _descripcion = value;
            }
        }

        private double _precioTotal;
        public double PrecioTotal
        {
            get
            {
                return _precioTotal;
            }
            set
            {
                _precioTotal = value;
            }
        }

        #endregion

        #region Contructor

        public ItemRemito()
        {
            _codigoEmpresa = EmpresaCS.Instance.CodigoEmpresa;
            _nroComprobante1 = EmpresaCS.Instance.NroComprabante1;

            _iva = 21;

            _posicion = -1;
        }
        #endregion
    }
}
